{
  "cells": [
    {
      "cell_type": "code",
      "execution_count": 10,
      "metadata": {
        "colab": {
          "base_uri": "https://localhost:8080/"
        },
        "id": "wHsFZo6akD8M",
        "outputId": "6c016fc1-49bd-4712-b45b-2d21d87d6961"
      },
      "outputs": [
        {
          "output_type": "stream",
          "name": "stdout",
          "text": [
            "Files already downloaded and verified\n",
            "Files already downloaded and verified\n"
          ]
        }
      ],
      "source": [
        "import torch\n",
        "import torchvision\n",
        "import torchvision.transforms as transforms\n",
        "\n",
        "transform = transforms.Compose([transforms.ToTensor(), transforms.Normalize((0.5, 0.5, 0.5), (0.5, 0.5, 0.5))])\n",
        "batch_size = 8\n",
        "train_dataset = torchvision.datasets.cifar.CIFAR100(root='cifar100', train=True, transform=transform, download=True)\n",
        "test_dataset = torchvision.datasets.cifar.CIFAR100(root='cifar100', train=False, transform=transform, download=True)\n",
        "train_loader = torch.utils.data.DataLoader(train_dataset, batch_size=batch_size, shuffle=True, num_workers=2)\n",
        "test_loader = torch.utils.data.DataLoader(test_dataset, batch_size=batch_size, shuffle=False, num_workers=2)"
      ]
    },
    {
      "cell_type": "code",
      "execution_count": 11,
      "metadata": {
        "colab": {
          "base_uri": "https://localhost:8080/",
          "height": 147
        },
        "id": "VjkCK8NykPMb",
        "outputId": "62c09aa4-4348-4454-f269-d3c1d0877c47"
      },
      "outputs": [
        {
          "output_type": "display_data",
          "data": {
            "text/plain": [
              "<Figure size 640x480 with 1 Axes>"
            ],
            "image/png": "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\n"
          },
          "metadata": {}
        },
        {
          "output_type": "stream",
          "name": "stdout",
          "text": [
            "torch.Size([8])\n"
          ]
        }
      ],
      "source": [
        "import matplotlib.pyplot as plt\n",
        "import numpy as np\n",
        "\n",
        "# functions to show an image\n",
        "\n",
        "\n",
        "def imshow(img):\n",
        "    img = img / 2 + 0.5     # unnormalize\n",
        "    npimg = img.numpy()\n",
        "    plt.imshow(np.transpose(npimg, (1, 2, 0)))\n",
        "    plt.show()\n",
        "\n",
        "\n",
        "# get some random training images\n",
        "dataiter = iter(train_loader)\n",
        "# images, labels = dataiter.next()\n",
        "images, labels = next(dataiter)\n",
        "\n",
        "# show images\n",
        "imshow(torchvision.utils.make_grid(images))\n",
        "# print labels\n",
        "print(labels.shape)"
      ]
    },
    {
      "cell_type": "code",
      "execution_count": 12,
      "metadata": {
        "id": "QY16Ypg6KVrS"
      },
      "outputs": [],
      "source": [
        "import torch\n",
        "import torch.nn as nn\n",
        "\n",
        "class Mlp(nn.Module):\n",
        "    def __init__(self, in_features, hidden_features=None, out_features=None, act_layer=nn.GELU, drop=0.):\n",
        "        super().__init__()\n",
        "        out_features = out_features or in_features\n",
        "        hidden_features = hidden_features or in_features\n",
        "        self.fc1 = nn.Linear(in_features, hidden_features)\n",
        "        self.act = act_layer()\n",
        "        self.fc2 = nn.Linear(hidden_features, out_features)\n",
        "        self.drop = nn.Dropout(drop)\n",
        "\n",
        "    def forward(self, x):\n",
        "        x = self.fc1(x)\n",
        "        x = self.act(x)\n",
        "        x = self.drop(x)\n",
        "        x = self.fc2(x)\n",
        "        x = self.drop(x)\n",
        "        return x\n",
        "\n",
        "class BasicConv(nn.Module):\n",
        "    def __init__(\n",
        "        self,\n",
        "        in_planes,\n",
        "        out_planes,\n",
        "        kernel_size,\n",
        "        stride=1,\n",
        "        padding=0,\n",
        "        dilation=1,\n",
        "        groups=1,\n",
        "        relu=True,\n",
        "        bn=True,\n",
        "        bias=False,\n",
        "    ):\n",
        "        super(BasicConv, self).__init__()\n",
        "        self.out_channels = out_planes\n",
        "        self.conv = nn.Conv2d(\n",
        "            in_planes,\n",
        "            out_planes,\n",
        "            kernel_size=kernel_size,\n",
        "            stride=stride,\n",
        "            padding=padding,\n",
        "            dilation=dilation,\n",
        "            groups=groups,\n",
        "            bias=bias,\n",
        "        )\n",
        "        self.bn = (\n",
        "            nn.BatchNorm2d(out_planes, eps=1e-5, momentum=0.01, affine=True)\n",
        "            if bn\n",
        "            else None\n",
        "        )\n",
        "        self.relu = nn.ReLU() if relu else None\n",
        "\n",
        "    def forward(self, x):\n",
        "        x = self.conv(x)\n",
        "        if self.bn is not None:\n",
        "            x = self.bn(x)\n",
        "        if self.relu is not None:\n",
        "            x = self.relu(x)\n",
        "        return x\n",
        "\n",
        "\n",
        "class ChannelPool(nn.Module):\n",
        "    def forward(self, x):\n",
        "        return torch.cat(\n",
        "            (torch.max(x, 1)[0].unsqueeze(1), torch.mean(x, 1).unsqueeze(1)), dim=1\n",
        "        )\n",
        "\n",
        "\n",
        "class SpatialGate(nn.Module):\n",
        "    def __init__(self):\n",
        "        super(SpatialGate, self).__init__()\n",
        "        kernel_size = 7\n",
        "        self.compress = ChannelPool()\n",
        "        self.spatial = BasicConv(\n",
        "            2, 1, kernel_size, stride=1, padding=(kernel_size - 1) // 2, relu=False\n",
        "        )\n",
        "\n",
        "    def forward(self, x):\n",
        "        x_compress = self.compress(x)\n",
        "        x_out = self.spatial(x_compress)\n",
        "        scale = torch.sigmoid_(x_out)\n",
        "        return x * scale\n",
        "\n",
        "class reweight(nn.Module):\n",
        "    def __init__(self):\n",
        "        super(reweight, self).__init__()\n",
        "        self.mlp = Mlp(6,10,3)\n",
        "\n",
        "\n",
        "    def forward(self,x1,x2,x3):\n",
        "        b,c,h,w=x1.shape\n",
        "        x1_f = x1.reshape(b, -1)\n",
        "        x2_f = x2.reshape(b, -1)\n",
        "        x3_f = x3.reshape(b, -1)\n",
        "        x1_in = torch.cat((x1_f.max(1)[0].reshape(b, -1),\n",
        "                           x1_f.mean(1).reshape(b, -1)),\n",
        "                          dim=1)\n",
        "        x2_in = torch.cat((x2_f.max(1)[0].reshape(b, -1),\n",
        "                           x2_f.mean(1).reshape(b, -1)),\n",
        "                          dim=1)\n",
        "        x3_in = torch.cat((x3_f.max(1)[0].reshape(b, -1),\n",
        "                           x3_f.mean(1).reshape(b, -1)),\n",
        "                          dim=1)\n",
        "        mlp_input=torch.cat((torch.cat((x1_in,x2_in),dim=1),x3_in),dim=1)\n",
        "        weight = self.mlp(mlp_input)\n",
        "        # weight = self.soft(weight)\n",
        "        weight = torch.sigmoid_(weight)\n",
        "\n",
        "        out = (weight[:, 0]).reshape(b, 1, 1, 1) * x1 + (weight[:, 1]).reshape(b, 1, 1, 1) * x2 + (\n",
        "        weight[:, 2]).reshape(b, 1, 1, 1) * x3\n",
        "\n",
        "        return out\n",
        "\n",
        "class TripletAttention(nn.Module):\n",
        "    def __init__(\n",
        "        self,\n",
        "        gate_channels,\n",
        "        reduction_ratio=16,\n",
        "        pool_types=[\"avg\", \"max\"],\n",
        "        no_spatial=False,\n",
        "    ):\n",
        "        super(TripletAttention, self).__init__()\n",
        "        self.ChannelGateH = SpatialGate()\n",
        "        self.ChannelGateW = SpatialGate()\n",
        "        self.no_spatial = no_spatial\n",
        "        if not no_spatial:\n",
        "            self.SpatialGate = SpatialGate()\n",
        "            # self.re = reweight()\n",
        "\n",
        "\n",
        "\n",
        "    def forward(self, x):\n",
        "        x_perm1 = x.permute(0, 2, 1, 3).contiguous()\n",
        "        x_out1 = self.ChannelGateH(x_perm1)\n",
        "        x_out11 = x_out1.permute(0, 2, 1, 3).contiguous()\n",
        "        x_perm2 = x.permute(0, 3, 2, 1).contiguous()\n",
        "        x_out2 = self.ChannelGateW(x_perm2)\n",
        "        x_out21 = x_out2.permute(0, 3, 2, 1).contiguous()\n",
        "        if not self.no_spatial:\n",
        "            x_out = self.SpatialGate(x)\n",
        "            x_out = (1 / 3) * (x_out + x_out11 + x_out21)\n",
        "            # x_out = self.re(x_out,x_out11,x_out21)\n",
        "        else:\n",
        "            x_out = (1 / 2) * (x_out11 + x_out21)\n",
        "        return x_out\n"
      ]
    },
    {
      "cell_type": "code",
      "execution_count": 13,
      "metadata": {
        "id": "1mY2iwmCkcpA"
      },
      "outputs": [],
      "source": [
        "\n",
        "import math\n",
        "\n",
        "import torch\n",
        "import torch.nn as nn\n",
        "import torch.nn.functional as F\n",
        "from torch.nn import init\n",
        "\n",
        "\n",
        "def conv3x3(in_planes, out_planes, stride=1):\n",
        "    \"3x3 convolution with padding\"\n",
        "    return nn.Conv2d(\n",
        "        in_planes, out_planes, kernel_size=3, stride=stride, padding=1, bias=False\n",
        "    )\n",
        "\n",
        "\n",
        "class BasicBlock(nn.Module):\n",
        "    expansion = 1\n",
        "\n",
        "    def __init__(\n",
        "        self, inplanes, planes, stride=1, downsample=None, use_triplet_attention=False\n",
        "    ):\n",
        "        super(BasicBlock, self).__init__()\n",
        "        self.conv1 = conv3x3(inplanes, planes, stride)\n",
        "        self.bn1 = nn.BatchNorm2d(planes)\n",
        "        self.relu = nn.ReLU(inplace=True)\n",
        "        self.conv2 = conv3x3(planes, planes)\n",
        "        self.bn2 = nn.BatchNorm2d(planes)\n",
        "        self.downsample = downsample\n",
        "        self.stride = stride\n",
        "\n",
        "        if use_triplet_attention:\n",
        "            self.triplet_attention = TripletAttention(planes, 16)\n",
        "        else:\n",
        "            self.triplet_attention = None\n",
        "\n",
        "    def forward(self, x):\n",
        "        residual = x\n",
        "\n",
        "        out = self.conv1(x)\n",
        "        out = self.bn1(out)\n",
        "        out = self.relu(out)\n",
        "\n",
        "        out = self.conv2(out)\n",
        "        out = self.bn2(out)\n",
        "\n",
        "        if self.downsample is not None:\n",
        "            residual = self.downsample(x)\n",
        "\n",
        "        if not self.triplet_attention is None:\n",
        "            out = self.triplet_attention(out)\n",
        "\n",
        "        out += residual\n",
        "        out = self.relu(out)\n",
        "\n",
        "        return out\n",
        "\n",
        "\n",
        "class Bottleneck(nn.Module):\n",
        "    expansion = 4\n",
        "\n",
        "    def __init__(\n",
        "        self, inplanes, planes, stride=1, downsample=None, use_triplet_attention=False\n",
        "    ):\n",
        "        super(Bottleneck, self).__init__()\n",
        "        self.conv1 = nn.Conv2d(inplanes, planes, kernel_size=1, bias=False)\n",
        "        self.bn1 = nn.BatchNorm2d(planes)\n",
        "        self.conv2 = nn.Conv2d(\n",
        "            planes, planes, kernel_size=3, stride=stride, padding=1, bias=False\n",
        "        )\n",
        "        self.bn2 = nn.BatchNorm2d(planes)\n",
        "        self.conv3 = nn.Conv2d(planes, planes * 4, kernel_size=1, bias=False)\n",
        "        self.bn3 = nn.BatchNorm2d(planes * 4)\n",
        "        self.relu = nn.ReLU(inplace=True)\n",
        "        self.downsample = downsample\n",
        "        self.stride = stride\n",
        "\n",
        "        if use_triplet_attention:\n",
        "            self.triplet_attention = TripletAttention(planes * 4, 16)\n",
        "        else:\n",
        "            self.triplet_attention = None\n",
        "\n",
        "    def forward(self, x):\n",
        "        residual = x\n",
        "\n",
        "        out = self.conv1(x)\n",
        "        out = self.bn1(out)\n",
        "        out = self.relu(out)\n",
        "\n",
        "        out = self.conv2(out)\n",
        "        out = self.bn2(out)\n",
        "        out = self.relu(out)\n",
        "\n",
        "        out = self.conv3(out)\n",
        "        out = self.bn3(out)\n",
        "\n",
        "        if self.downsample is not None:\n",
        "            residual = self.downsample(x)\n",
        "\n",
        "        if not self.triplet_attention is None:\n",
        "            out = self.triplet_attention(out)\n",
        "\n",
        "        out += residual\n",
        "        out = self.relu(out)\n",
        "\n",
        "        return out\n",
        "\n",
        "\n",
        "class ResNet(nn.Module):\n",
        "    def __init__(self, block, layers, network_type, num_classes, att_type=None):\n",
        "        self.inplanes = 64\n",
        "        super(ResNet, self).__init__()\n",
        "        self.network_type = network_type\n",
        "        # different model config between ImageNet and CIFAR\n",
        "        if network_type == \"ImageNet\":\n",
        "            self.conv1 = nn.Conv2d(\n",
        "                3, 64, kernel_size=7, stride=2, padding=3, bias=False\n",
        "            )\n",
        "            self.maxpool = nn.MaxPool2d(kernel_size=3, stride=2, padding=1)\n",
        "            self.avgpool = nn.AvgPool2d(7)\n",
        "        else:\n",
        "            self.conv1 = nn.Conv2d(\n",
        "                3, 64, kernel_size=3, stride=1, padding=1, bias=False\n",
        "            )\n",
        "\n",
        "        self.bn1 = nn.BatchNorm2d(64)\n",
        "        self.relu = nn.ReLU(inplace=True)\n",
        "\n",
        "        self.layer1 = self._make_layer(block, 64, layers[0], att_type=att_type)\n",
        "        self.layer2 = self._make_layer(\n",
        "            block, 128, layers[1], stride=2, att_type=att_type\n",
        "        )\n",
        "        self.layer3 = self._make_layer(\n",
        "            block, 256, layers[2], stride=2, att_type=att_type\n",
        "        )\n",
        "        self.layer4 = self._make_layer(\n",
        "            block, 512, layers[3], stride=2, att_type=att_type\n",
        "        )\n",
        "\n",
        "        self.fc = nn.Linear(512 * block.expansion, num_classes)\n",
        "\n",
        "        init.kaiming_normal_(self.fc.weight)\n",
        "        for key in self.state_dict():\n",
        "            if key.split(\".\")[-1] == \"weight\":\n",
        "                if \"conv\" in key:\n",
        "                    init.kaiming_normal_(self.state_dict()[key], mode=\"fan_out\")\n",
        "                if \"bn\" in key:\n",
        "                    if \"SpatialGate\" in key:\n",
        "                        self.state_dict()[key][...] = 0\n",
        "                    else:\n",
        "                        self.state_dict()[key][...] = 1\n",
        "            elif key.split(\".\")[-1] == \"bias\":\n",
        "                self.state_dict()[key][...] = 0\n",
        "\n",
        "    def _make_layer(self, block, planes, blocks, stride=1, att_type=None):\n",
        "        downsample = None\n",
        "        if stride != 1 or self.inplanes != planes * block.expansion:\n",
        "            downsample = nn.Sequential(\n",
        "                nn.Conv2d(\n",
        "                    self.inplanes,\n",
        "                    planes * block.expansion,\n",
        "                    kernel_size=1,\n",
        "                    stride=stride,\n",
        "                    bias=False,\n",
        "                ),\n",
        "                nn.BatchNorm2d(planes * block.expansion),\n",
        "            )\n",
        "\n",
        "        layers = []\n",
        "        layers.append(\n",
        "            block(\n",
        "                self.inplanes,\n",
        "                planes,\n",
        "                stride,\n",
        "                downsample,\n",
        "                use_triplet_attention=att_type == \"TripletAttention\",\n",
        "            )\n",
        "        )\n",
        "        self.inplanes = planes * block.expansion\n",
        "        for i in range(1, blocks):\n",
        "            layers.append(\n",
        "                block(\n",
        "                    self.inplanes,\n",
        "                    planes,\n",
        "                    use_triplet_attention=att_type == \"TripletAttention\",\n",
        "                )\n",
        "            )\n",
        "\n",
        "        return nn.Sequential(*layers)\n",
        "\n",
        "    def forward(self, x):\n",
        "        x = self.conv1(x)\n",
        "        x = self.bn1(x)\n",
        "        x = self.relu(x)\n",
        "        if self.network_type == \"ImageNet\":\n",
        "            x = self.maxpool(x)\n",
        "\n",
        "        x = self.layer1(x)\n",
        "        x = self.layer2(x)\n",
        "        x = self.layer3(x)\n",
        "        x = self.layer4(x)\n",
        "\n",
        "        if self.network_type == \"ImageNet\":\n",
        "            x = self.avgpool(x)\n",
        "        else:\n",
        "            x = F.avg_pool2d(x, 4)\n",
        "        x = x.view(x.size(0), -1)\n",
        "        x = self.fc(x)\n",
        "        return x\n",
        "\n",
        "\n",
        "def ResidualNet(network_type, depth, num_classes, att_type):\n",
        "\n",
        "    assert network_type in [\n",
        "        \"ImageNet\",\n",
        "        \"CIFAR10\",\n",
        "        \"CIFAR100\",\n",
        "    ], \"network type should be ImageNet or CIFAR10 / CIFAR100\"\n",
        "    assert depth in [18, 34, 50, 101], \"network depth should be 18, 34, 50 or 101\"\n",
        "\n",
        "    if depth == 18:\n",
        "        model = ResNet(BasicBlock, [2, 2, 2, 2], network_type, num_classes, att_type)\n",
        "\n",
        "    elif depth == 34:\n",
        "        model = ResNet(BasicBlock, [3, 4, 6, 3], network_type, num_classes, att_type)\n",
        "\n",
        "    elif depth == 50:\n",
        "        model = ResNet(Bottleneck, [3, 4, 6, 3], network_type, num_classes, att_type)\n",
        "\n",
        "    elif depth == 101:\n",
        "        model = ResNet(Bottleneck, [3, 4, 23, 3], network_type, num_classes, att_type)\n",
        "\n",
        "    return model\n",
        "\n",
        "# if __name__==\"__main__\":\n",
        "#     net=ResidualNet(\"CIFAR100\",34,10,\"TripletAttention\")\n",
        "#     print(net)\n"
      ]
    },
    {
      "cell_type": "code",
      "execution_count": 14,
      "metadata": {
        "colab": {
          "base_uri": "https://localhost:8080/"
        },
        "id": "otA9CIgdnXfW",
        "outputId": "788dfd32-ea84-4b2f-b3f9-afc426566cb2"
      },
      "outputs": [
        {
          "output_type": "stream",
          "name": "stdout",
          "text": [
            "ResNet(\n",
            "  (conv1): Conv2d(3, 64, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1), bias=False)\n",
            "  (bn1): BatchNorm2d(64, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)\n",
            "  (relu): ReLU(inplace=True)\n",
            "  (layer1): Sequential(\n",
            "    (0): BasicBlock(\n",
            "      (conv1): Conv2d(64, 64, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1), bias=False)\n",
            "      (bn1): BatchNorm2d(64, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)\n",
            "      (relu): ReLU(inplace=True)\n",
            "      (conv2): Conv2d(64, 64, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1), bias=False)\n",
            "      (bn2): BatchNorm2d(64, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)\n",
            "    )\n",
            "    (1): BasicBlock(\n",
            "      (conv1): Conv2d(64, 64, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1), bias=False)\n",
            "      (bn1): BatchNorm2d(64, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)\n",
            "      (relu): ReLU(inplace=True)\n",
            "      (conv2): Conv2d(64, 64, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1), bias=False)\n",
            "      (bn2): BatchNorm2d(64, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)\n",
            "    )\n",
            "  )\n",
            "  (layer2): Sequential(\n",
            "    (0): BasicBlock(\n",
            "      (conv1): Conv2d(64, 128, kernel_size=(3, 3), stride=(2, 2), padding=(1, 1), bias=False)\n",
            "      (bn1): BatchNorm2d(128, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)\n",
            "      (relu): ReLU(inplace=True)\n",
            "      (conv2): Conv2d(128, 128, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1), bias=False)\n",
            "      (bn2): BatchNorm2d(128, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)\n",
            "      (downsample): Sequential(\n",
            "        (0): Conv2d(64, 128, kernel_size=(1, 1), stride=(2, 2), bias=False)\n",
            "        (1): BatchNorm2d(128, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)\n",
            "      )\n",
            "    )\n",
            "    (1): BasicBlock(\n",
            "      (conv1): Conv2d(128, 128, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1), bias=False)\n",
            "      (bn1): BatchNorm2d(128, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)\n",
            "      (relu): ReLU(inplace=True)\n",
            "      (conv2): Conv2d(128, 128, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1), bias=False)\n",
            "      (bn2): BatchNorm2d(128, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)\n",
            "    )\n",
            "  )\n",
            "  (layer3): Sequential(\n",
            "    (0): BasicBlock(\n",
            "      (conv1): Conv2d(128, 256, kernel_size=(3, 3), stride=(2, 2), padding=(1, 1), bias=False)\n",
            "      (bn1): BatchNorm2d(256, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)\n",
            "      (relu): ReLU(inplace=True)\n",
            "      (conv2): Conv2d(256, 256, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1), bias=False)\n",
            "      (bn2): BatchNorm2d(256, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)\n",
            "      (downsample): Sequential(\n",
            "        (0): Conv2d(128, 256, kernel_size=(1, 1), stride=(2, 2), bias=False)\n",
            "        (1): BatchNorm2d(256, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)\n",
            "      )\n",
            "    )\n",
            "    (1): BasicBlock(\n",
            "      (conv1): Conv2d(256, 256, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1), bias=False)\n",
            "      (bn1): BatchNorm2d(256, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)\n",
            "      (relu): ReLU(inplace=True)\n",
            "      (conv2): Conv2d(256, 256, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1), bias=False)\n",
            "      (bn2): BatchNorm2d(256, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)\n",
            "    )\n",
            "  )\n",
            "  (layer4): Sequential(\n",
            "    (0): BasicBlock(\n",
            "      (conv1): Conv2d(256, 512, kernel_size=(3, 3), stride=(2, 2), padding=(1, 1), bias=False)\n",
            "      (bn1): BatchNorm2d(512, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)\n",
            "      (relu): ReLU(inplace=True)\n",
            "      (conv2): Conv2d(512, 512, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1), bias=False)\n",
            "      (bn2): BatchNorm2d(512, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)\n",
            "      (downsample): Sequential(\n",
            "        (0): Conv2d(256, 512, kernel_size=(1, 1), stride=(2, 2), bias=False)\n",
            "        (1): BatchNorm2d(512, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)\n",
            "      )\n",
            "    )\n",
            "    (1): BasicBlock(\n",
            "      (conv1): Conv2d(512, 512, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1), bias=False)\n",
            "      (bn1): BatchNorm2d(512, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)\n",
            "      (relu): ReLU(inplace=True)\n",
            "      (conv2): Conv2d(512, 512, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1), bias=False)\n",
            "      (bn2): BatchNorm2d(512, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)\n",
            "    )\n",
            "  )\n",
            "  (fc): Linear(in_features=512, out_features=100, bias=True)\n",
            ")\n"
          ]
        }
      ],
      "source": [
        "device=\"cuda\"\n",
        "# net=ResidualNet(\"CIFAR100\",18,100,\"TripletAttention\").to(device)\n",
        "net=ResidualNet(\"CIFAR100\",18,100,None).to(device)\n",
        "print(net)"
      ]
    },
    {
      "cell_type": "code",
      "execution_count": 15,
      "metadata": {
        "colab": {
          "base_uri": "https://localhost:8080/"
        },
        "id": "35VI01P_kqal",
        "outputId": "bca67c82-1fed-41e6-a210-b83674156acf"
      },
      "outputs": [
        {
          "output_type": "stream",
          "name": "stdout",
          "text": [
            "6250\n"
          ]
        }
      ],
      "source": [
        "import torch.optim as optim\n",
        "\n",
        "criterion = nn.CrossEntropyLoss()\n",
        "optimizer = torch.optim.Adam(net.parameters(), lr=0.0005)\n",
        "print(len(train_loader))"
      ]
    },
    {
      "cell_type": "code",
      "execution_count": 15,
      "metadata": {
        "id": "ck0do7nrmNTQ"
      },
      "outputs": [],
      "source": []
    },
    {
      "cell_type": "code",
      "execution_count": 16,
      "metadata": {
        "id": "xKlx2mCxlE02"
      },
      "outputs": [],
      "source": [
        "from tqdm import tqdm\n",
        "def train(epoch):\n",
        "    net.train()\n",
        "    # Loop over each batch from the training set\n",
        "    train_tqdm = tqdm(train_loader, desc=\"Epoch \" + str(epoch))\n",
        "    for batch_idx, (data, target) in enumerate(train_tqdm):\n",
        "        # Copy data to GPU if needed\n",
        "        data = data.to(device)\n",
        "        target = target.to(device)\n",
        "        # Zero gradient buffers\n",
        "        optimizer.zero_grad()\n",
        "        # Pass data through the network\n",
        "        output = net(data)\n",
        "        # Calculate loss\n",
        "        loss = criterion(output, target)\n",
        "        # Backpropagate\n",
        "        loss.backward()\n",
        "        # Update weights\n",
        "        optimizer.step()  # w - alpha * dL / dw\n",
        "        train_tqdm.set_postfix({\"loss\": \"%.3g\" % loss.item()})\n",
        "\n",
        "def validate(lossv,top1AccuracyList,top5AccuracyList):\n",
        "    net.eval()\n",
        "    val_loss = 0\n",
        "    top1Correct = 0\n",
        "    top5Correct = 0\n",
        "    for index,(data, target) in enumerate(test_loader):\n",
        "        data = data.to(device)\n",
        "        labels = target.to(device)\n",
        "        outputs = net(data)\n",
        "        val_loss += criterion(outputs, labels).data.item()\n",
        "        _, top1Predicted = torch.max(outputs.data, 1)\n",
        "        top5Predicted = torch.topk(outputs.data, k=5, dim=1, largest=True)[1]\n",
        "        top1Correct += (top1Predicted == labels).cpu().sum().item()\n",
        "        label_resize = labels.view(-1, 1).expand_as(top5Predicted)\n",
        "        top5Correct += torch.eq(top5Predicted, label_resize).view(-1).cpu().sum().float().item()\n",
        "\n",
        "    val_loss /= len(test_loader)\n",
        "    lossv.append(val_loss)\n",
        "\n",
        "    top1Acc=100*top1Correct / len(test_loader.dataset)\n",
        "    top5Acc=100*top5Correct / len(test_loader.dataset)\n",
        "    top1AccuracyList.append(top1Acc)\n",
        "    top5AccuracyList.append(top5Acc)\n",
        "    \n",
        "    print('\\nValidation set: Average loss: {:.4f}, Top1Accuracy: {}/{} ({:.0f}%) Top5Accuracy: {}/{} ({:.0f}%)\\n'.format(\n",
        "        val_loss, top1Correct, len(test_loader.dataset), top1Acc,top5Correct, len(test_loader.dataset), top5Acc))\n",
        "#     accuracy = 100. * correct.to(torch.float32) / len(testloader.dataset)\n",
        "#     accv.append(accuracy)"
      ]
    },
    {
      "cell_type": "code",
      "execution_count": 17,
      "metadata": {
        "colab": {
          "base_uri": "https://localhost:8080/"
        },
        "id": "pTWz8B3Dl9gu",
        "outputId": "98dafb00-0665-4e7b-e596-03eb96d06726"
      },
      "outputs": [
        {
          "metadata": {
            "tags": null
          },
          "name": "stderr",
          "output_type": "stream",
          "text": [
            "Epoch 0: 100%|██████████| 6250/6250 [02:23<00:00, 43.54it/s, loss=3.07]\n"
          ]
        },
        {
          "metadata": {
            "tags": null
          },
          "name": "stdout",
          "output_type": "stream",
          "text": [
            "\n",
            "Validation set: Average loss: 2.7114, Top1Accuracy: 3059/10000 (31%) Top5Accuracy: 6264.0/10000 (63%)\n",
            "\n"
          ]
        },
        {
          "metadata": {
            "tags": null
          },
          "name": "stderr",
          "output_type": "stream",
          "text": [
            "Epoch 1: 100%|██████████| 6250/6250 [02:17<00:00, 45.35it/s, loss=2.25]\n"
          ]
        },
        {
          "metadata": {
            "tags": null
          },
          "name": "stdout",
          "output_type": "stream",
          "text": [
            "\n",
            "Validation set: Average loss: 2.1398, Top1Accuracy: 4236/10000 (42%) Top5Accuracy: 7515.0/10000 (75%)\n",
            "\n"
          ]
        },
        {
          "metadata": {
            "tags": null
          },
          "name": "stderr",
          "output_type": "stream",
          "text": [
            "Epoch 2: 100%|██████████| 6250/6250 [02:17<00:00, 45.32it/s, loss=2.39]\n"
          ]
        },
        {
          "metadata": {
            "tags": null
          },
          "name": "stdout",
          "output_type": "stream",
          "text": [
            "\n",
            "Validation set: Average loss: 1.8491, Top1Accuracy: 4975/10000 (50%) Top5Accuracy: 7986.0/10000 (80%)\n",
            "\n"
          ]
        },
        {
          "metadata": {
            "tags": null
          },
          "name": "stderr",
          "output_type": "stream",
          "text": [
            "Epoch 3: 100%|██████████| 6250/6250 [02:17<00:00, 45.48it/s, loss=1.12]\n"
          ]
        },
        {
          "metadata": {
            "tags": null
          },
          "name": "stdout",
          "output_type": "stream",
          "text": [
            "\n",
            "Validation set: Average loss: 1.6730, Top1Accuracy: 5453/10000 (55%) Top5Accuracy: 8295.0/10000 (83%)\n",
            "\n"
          ]
        },
        {
          "metadata": {
            "tags": null
          },
          "name": "stderr",
          "output_type": "stream",
          "text": [
            "Epoch 4: 100%|██████████| 6250/6250 [02:17<00:00, 45.54it/s, loss=2.51]\n"
          ]
        },
        {
          "metadata": {
            "tags": null
          },
          "name": "stdout",
          "output_type": "stream",
          "text": [
            "\n",
            "Validation set: Average loss: 1.6966, Top1Accuracy: 5538/10000 (55%) Top5Accuracy: 8348.0/10000 (83%)\n",
            "\n"
          ]
        },
        {
          "metadata": {
            "tags": null
          },
          "name": "stderr",
          "output_type": "stream",
          "text": [
            "Epoch 5: 100%|██████████| 6250/6250 [02:16<00:00, 45.84it/s, loss=2.42]\n"
          ]
        },
        {
          "metadata": {
            "tags": null
          },
          "name": "stdout",
          "output_type": "stream",
          "text": [
            "\n",
            "Validation set: Average loss: 1.7333, Top1Accuracy: 5613/10000 (56%) Top5Accuracy: 8361.0/10000 (84%)\n",
            "\n"
          ]
        },
        {
          "metadata": {
            "tags": null
          },
          "name": "stderr",
          "output_type": "stream",
          "text": [
            "Epoch 6: 100%|██████████| 6250/6250 [02:16<00:00, 45.68it/s, loss=0.548]\n"
          ]
        },
        {
          "metadata": {
            "tags": null
          },
          "name": "stdout",
          "output_type": "stream",
          "text": [
            "\n",
            "Validation set: Average loss: 1.8587, Top1Accuracy: 5650/10000 (56%) Top5Accuracy: 8396.0/10000 (84%)\n",
            "\n"
          ]
        },
        {
          "metadata": {
            "tags": null
          },
          "name": "stderr",
          "output_type": "stream",
          "text": [
            "Epoch 7: 100%|██████████| 6250/6250 [02:17<00:00, 45.36it/s, loss=1.06]\n"
          ]
        },
        {
          "metadata": {
            "tags": null
          },
          "name": "stdout",
          "output_type": "stream",
          "text": [
            "\n",
            "Validation set: Average loss: 1.9400, Top1Accuracy: 5735/10000 (57%) Top5Accuracy: 8334.0/10000 (83%)\n",
            "\n"
          ]
        },
        {
          "metadata": {
            "tags": null
          },
          "name": "stderr",
          "output_type": "stream",
          "text": [
            "Epoch 8: 100%|██████████| 6250/6250 [02:19<00:00, 44.76it/s, loss=0.369]\n"
          ]
        },
        {
          "metadata": {
            "tags": null
          },
          "name": "stdout",
          "output_type": "stream",
          "text": [
            "\n",
            "Validation set: Average loss: 2.1685, Top1Accuracy: 5661/10000 (57%) Top5Accuracy: 8264.0/10000 (83%)\n",
            "\n"
          ]
        },
        {
          "metadata": {
            "tags": null
          },
          "name": "stderr",
          "output_type": "stream",
          "text": [
            "Epoch 9: 100%|██████████| 6250/6250 [02:20<00:00, 44.33it/s, loss=0.142]\n"
          ]
        },
        {
          "metadata": {
            "tags": null
          },
          "name": "stdout",
          "output_type": "stream",
          "text": [
            "\n",
            "Validation set: Average loss: 2.2860, Top1Accuracy: 5576/10000 (56%) Top5Accuracy: 8239.0/10000 (82%)\n",
            "\n"
          ]
        },
        {
          "metadata": {
            "tags": null
          },
          "name": "stderr",
          "output_type": "stream",
          "text": [
            "Epoch 10: 100%|██████████| 6250/6250 [02:22<00:00, 43.72it/s, loss=0.166]\n"
          ]
        },
        {
          "metadata": {
            "tags": null
          },
          "name": "stdout",
          "output_type": "stream",
          "text": [
            "\n",
            "Validation set: Average loss: 2.3447, Top1Accuracy: 5608/10000 (56%) Top5Accuracy: 8257.0/10000 (83%)\n",
            "\n"
          ]
        },
        {
          "metadata": {
            "tags": null
          },
          "name": "stderr",
          "output_type": "stream",
          "text": [
            "Epoch 11: 100%|██████████| 6250/6250 [02:21<00:00, 44.12it/s, loss=0.0125]\n"
          ]
        },
        {
          "metadata": {
            "tags": null
          },
          "name": "stdout",
          "output_type": "stream",
          "text": [
            "\n",
            "Validation set: Average loss: 2.5251, Top1Accuracy: 5523/10000 (55%) Top5Accuracy: 8103.0/10000 (81%)\n",
            "\n"
          ]
        },
        {
          "metadata": {
            "tags": null
          },
          "name": "stderr",
          "output_type": "stream",
          "text": [
            "Epoch 12: 100%|██████████| 6250/6250 [02:19<00:00, 44.70it/s, loss=0.0882]\n"
          ]
        },
        {
          "metadata": {
            "tags": null
          },
          "name": "stdout",
          "output_type": "stream",
          "text": [
            "\n",
            "Validation set: Average loss: 2.4098, Top1Accuracy: 5650/10000 (56%) Top5Accuracy: 8215.0/10000 (82%)\n",
            "\n"
          ]
        },
        {
          "metadata": {
            "tags": null
          },
          "name": "stderr",
          "output_type": "stream",
          "text": [
            "Epoch 13: 100%|██████████| 6250/6250 [02:22<00:00, 43.84it/s, loss=0.0236]\n"
          ]
        },
        {
          "metadata": {
            "tags": null
          },
          "name": "stdout",
          "output_type": "stream",
          "text": [
            "\n",
            "Validation set: Average loss: 2.5695, Top1Accuracy: 5592/10000 (56%) Top5Accuracy: 8147.0/10000 (81%)\n",
            "\n"
          ]
        },
        {
          "metadata": {
            "tags": null
          },
          "name": "stderr",
          "output_type": "stream",
          "text": [
            "Epoch 14: 100%|██████████| 6250/6250 [02:21<00:00, 44.15it/s, loss=0.00341]\n"
          ]
        },
        {
          "metadata": {
            "tags": null
          },
          "name": "stdout",
          "output_type": "stream",
          "text": [
            "\n",
            "Validation set: Average loss: 2.5797, Top1Accuracy: 5598/10000 (56%) Top5Accuracy: 8210.0/10000 (82%)\n",
            "\n"
          ]
        },
        {
          "metadata": {
            "tags": null
          },
          "name": "stderr",
          "output_type": "stream",
          "text": [
            "Epoch 15: 100%|██████████| 6250/6250 [02:20<00:00, 44.55it/s, loss=0.32]\n"
          ]
        },
        {
          "metadata": {
            "tags": null
          },
          "name": "stdout",
          "output_type": "stream",
          "text": [
            "\n",
            "Validation set: Average loss: 2.5081, Top1Accuracy: 5696/10000 (57%) Top5Accuracy: 8226.0/10000 (82%)\n",
            "\n"
          ]
        },
        {
          "metadata": {
            "tags": null
          },
          "name": "stderr",
          "output_type": "stream",
          "text": [
            "Epoch 16: 100%|██████████| 6250/6250 [02:20<00:00, 44.64it/s, loss=0.0271]\n"
          ]
        },
        {
          "metadata": {
            "tags": null
          },
          "name": "stdout",
          "output_type": "stream",
          "text": [
            "\n",
            "Validation set: Average loss: 2.6226, Top1Accuracy: 5650/10000 (56%) Top5Accuracy: 8195.0/10000 (82%)\n",
            "\n"
          ]
        },
        {
          "metadata": {
            "tags": null
          },
          "name": "stderr",
          "output_type": "stream",
          "text": [
            "Epoch 17: 100%|██████████| 6250/6250 [02:22<00:00, 43.91it/s, loss=0.093]\n"
          ]
        },
        {
          "metadata": {
            "tags": null
          },
          "name": "stdout",
          "output_type": "stream",
          "text": [
            "\n",
            "Validation set: Average loss: 2.6956, Top1Accuracy: 5610/10000 (56%) Top5Accuracy: 8163.0/10000 (82%)\n",
            "\n"
          ]
        },
        {
          "output_type": "stream",
          "name": "stderr",
          "text": [
            "Epoch 18: 100%|██████████| 6250/6250 [02:26<00:00, 42.79it/s, loss=0.00126]\n"
          ]
        },
        {
          "output_type": "stream",
          "name": "stdout",
          "text": [
            "\n",
            "Validation set: Average loss: 2.7380, Top1Accuracy: 5613/10000 (56%) Top5Accuracy: 8120.0/10000 (81%)\n",
            "\n"
          ]
        },
        {
          "output_type": "stream",
          "name": "stderr",
          "text": [
            "Epoch 19: 100%|██████████| 6250/6250 [02:26<00:00, 42.62it/s, loss=0.055]\n"
          ]
        },
        {
          "output_type": "stream",
          "name": "stdout",
          "text": [
            "\n",
            "Validation set: Average loss: 2.7861, Top1Accuracy: 5578/10000 (56%) Top5Accuracy: 8119.0/10000 (81%)\n",
            "\n",
            "Finished Training\n"
          ]
        }
      ],
      "source": [
        "lossv = []\n",
        "top1AccuracyList = []   # top1准确率列表\n",
        "top5AccuracyList = []   # top5准确率列表\n",
        "max_epoch = 20\n",
        "for epoch in range(max_epoch):  # loop over the dataset multiple times\n",
        "    train(epoch)\n",
        "    with torch.no_grad():\n",
        "        validate(lossv,top1AccuracyList,top5AccuracyList)\n",
        "        \n",
        "print('Finished Training')"
      ]
    },
    {
      "cell_type": "markdown",
      "source": [
        "# New Section"
      ],
      "metadata": {
        "id": "DW_Ya2WyDhrj"
      }
    },
    {
      "cell_type": "code",
      "execution_count": 17,
      "metadata": {
        "id": "5qEPmaZO1NU3"
      },
      "outputs": [],
      "source": []
    },
    {
      "cell_type": "code",
      "execution_count": 18,
      "metadata": {
        "id": "Z1-D3LkhvzDq",
        "colab": {
          "base_uri": "https://localhost:8080/",
          "height": 925
        },
        "outputId": "52f0ef9f-dd54-434f-fd44-058427c0d004"
      },
      "outputs": [
        {
          "output_type": "execute_result",
          "data": {
            "text/plain": [
              "Text(0.5, 1.0, 'validation top5 accuracy')"
            ]
          },
          "metadata": {},
          "execution_count": 18
        },
        {
          "output_type": "display_data",
          "data": {
            "text/plain": [
              "<Figure size 500x300 with 1 Axes>"
            ],
            "image/png": "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\n"
          },
          "metadata": {}
        },
        {
          "output_type": "display_data",
          "data": {
            "text/plain": [
              "<Figure size 500x300 with 1 Axes>"
            ],
            "image/png": "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\n"
          },
          "metadata": {}
        },
        {
          "output_type": "display_data",
          "data": {
            "text/plain": [
              "<Figure size 500x300 with 1 Axes>"
            ],
            "image/png": "iVBORw0KGgoAAAANSUhEUgAAAbIAAAEpCAYAAAD20qecAAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjcuMSwgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy/bCgiHAAAACXBIWXMAAA9hAAAPYQGoP6dpAAA7ZElEQVR4nO3deXhTVf4G8DdJm3Tf0w26UcpiWWStoIAC0rKDDLKogDDCaBHBGUVmBhBBEfWHzLggOlJRlmEZAVEUAaHKLlB2LKWU7jt0b9M2Ob8/2oaGrilts/T9PE8eyM3Jvd9e0ryce889VyKEECAiIjJRUkMXQERE9CAYZEREZNIYZEREZNIYZEREZNIYZEREZNIYZEREZNIYZEREZNIYZEREZNIYZEREZNIYZNQivvrqK0gkEty+fVu77PHHH8fjjz/e4HuPHj0KiUSCo0ePNmtNEokEb775ZrOuk4gMj0FGZmX//v1GF1atWVPVfwJqe5w6dapVaiBqbRaGLoDajp9//rnFt7F//3588skntQZHcXExLCxa/yNfX00tZcGCBejXr5/Oso4dO7ba9olaE4OMWo1cLjfo9q2srAy6/dY0aNAg/OlPfzJ0GS1KCIGSkhJYW1sbuhQyMB5aJOzatQsSiQSRkZE1XtuwYQMkEgmuXLkCALh06RJmzZqFDh06wMrKCp6enpg9ezays7Mb3E5t58iSkpIwYcIE2Nrawt3dHYsWLYJKparx3t9++w2TJ0+Gr68vFAoFfHx8sGjRIhQXF2vbzJo1C5988gkA6BxSq1LbObKoqCiMHDkSDg4OsLOzw7Bhw2ocgqs633f8+HG8+uqrUCqVsLW1xcSJE5GZmVnvz9xQTYWFhfjrX/8KHx8fKBQKdO7cGR988AHuvymFRCLB/PnzsWXLFnTu3BlWVlbo06cPfv311zq3nZ+fj/Ly8nrru19j9nOVP/74A08//TSUSiWsra3RuXNn/OMf/9Bpk5ycjDlz5sDb2xsKhQIBAQF48cUXUVpaCgB48803dfZHldrOsfr7+2PMmDE4cOAA+vbtC2tra2zYsAEAEBERgaFDh8Ld3R0KhQIPPfQQ1q9fX+vP+OOPP2LIkCGwt7eHg4MD+vXrh61btwIAli9fDktLy1r/XefOnQsnJyeUlJQ0bmdSq2GPjDB69GjY2dlhx44dGDJkiM5r27dvR3BwMLp16wYAOHjwIG7duoXnn38enp6euHr1Kj7//HNcvXoVp06dqvVLqS7FxcUYNmwYEhISsGDBAnh7e+Obb77BL7/8UqPtzp07UVRUhBdffBGurq44c+YMPvroIyQlJWHnzp0AgHnz5iElJQUHDx7EN9980+D2r169ikGDBsHBwQGvv/46LC0tsWHDBjz++OOIjIxESEiITvuXX34Zzs7OWL58OW7fvo1169Zh/vz52L59e53bqK8mIQTGjRuHI0eOYM6cOXj44Ydx4MABvPbaa0hOTsaHH36o0z4yMhLbt2/HggULoFAo8OmnnyIsLAxnzpzR/vtUef7551FQUACZTIZBgwbh/fffR9++fRvcJ43Zz0DFf2gGDRoES0tLzJ07F/7+/oiNjcW+ffvw9ttvAwBSUlLQv39/5OTkYO7cuejSpQuSk5Oxa9cuFBUVNamHHh0djWnTpmHevHl44YUX0LlzZwDA+vXrERwcjHHjxsHCwgL79u3DSy+9BI1Gg/DwcO37v/rqK8yePRvBwcFYsmQJnJycEBUVhZ9++gnTp0/Hc889h7feegvbt2/H/Pnzte8rLS3Frl27MGnSpDbVszcZgkgIMW3aNOHu7i7Ky8u1y1JTU4VUKhVvvfWWdllRUVGN927btk0AEL/++qt2WUREhAAg4uLitMuGDBkihgwZon2+bt06AUDs2LFDu6ywsFB07NhRABBHjhypd7urV68WEolExMfHa5eFh4eLuj7WAMTy5cu1zydMmCDkcrmIjY3VLktJSRH29vZi8ODBNX6W4cOHC41Go12+aNEiIZPJRE5OTq3ba6imPXv2CABi1apVOsv/9Kc/CYlEIm7evKlTOwBx9uxZ7bL4+HhhZWUlJk6cqF12/PhxMWnSJPHll1+KvXv3itWrVwtXV1dhZWUlzp8/X2+dQjR+Pw8ePFjY29vrLBNC6OyfGTNmCKlUKn7//fca66xqt3z58lr3TW2fHz8/PwFA/PTTT42qOzQ0VHTo0EH7PCcnR9jb24uQkBBRXFxcZ90DBgwQISEhOq9/++23NT6TZDx4aJEAAFOmTEFGRobOkPddu3ZBo9FgypQp2mXVz0eUlJQgKysLjzzyCADg/Pnzem1z//798PLy0jmXY2Njg7lz59ZoW327hYWFyMrKwsCBAyGEQFRUlF7bBQC1Wo2ff/4ZEyZMQIcOHbTLvby8MH36dBw7dgx5eXk675k7d65Oj3PQoEFQq9WIj4/Xe/tAxc8vk8mwYMECneV//etfIYTAjz/+qLN8wIAB6NOnj/a5r68vxo8fjwMHDkCtVgMABg4ciF27dmH27NkYN24c3njjDW1PecmSJQ3W1Jj9nJmZiV9//RWzZ8+Gr6+vzvur9o9Go8GePXswduzYWnuC+vTcqwsICEBoaGi9defm5iIrKwtDhgzBrVu3kJubC6DiaEJ+fj7eeOONGr2q6vXMmDEDp0+fRmxsrHbZli1b4OPjU+OIBRkHBhkBAMLCwuDo6KhzmGz79u14+OGH0alTJ+2yO3fu4JVXXoGHhwesra2hVCoREBAAANovjMaKj49Hx44da3ypVR0uqi4hIQGzZs2Ci4sL7OzsoFQqtV8q+m4XqPgyLioqqnVbXbt2hUajQWJios7y+7+0nZ2dAQB3797Ve/tAxc/v7e0Ne3v7Gtuver26oKCgGuvo1KkTioqK6j1X17FjR4wfPx5HjhzRBl5dGrOfb926BQA1DmdWl5mZiby8vHrbNEXVZ+1+x48fx/Dhw2FrawsnJycolUr8/e9/16m7KpgaqmnKlClQKBTYsmWL9v3ff/89nnnmmSYHMLUsniMjAIBCocCECROwe/dufPrpp0hPT8fx48fxzjvv6LR7+umnceLECbz22mt4+OGHYWdnB41Gg7CwMGg0mhapTa1W48knn8SdO3ewePFidOnSBba2tkhOTsasWbNabLv3k8lktS4X9w3MMEY+Pj4oLS1FYWEhHBwcam1jiP1cVzDUFbi1jVCMjY3FsGHD0KVLF6xduxY+Pj6Qy+XYv38/PvzwQ73rdnZ2xpgxY7BlyxYsW7YMu3btgkqlwrPPPqvXeqj1MMhIa8qUKdi0aRMOHz6M69evQwihc1jx7t27OHz4MFasWIFly5Zpl8fExDRpe35+frhy5QqEEDpfaNHR0TrtLl++jBs3bmDTpk2YMWOGdvnBgwdrrLOx/2NWKpWwsbGpsS2gYjSeVCqFj49PY3+UetVVk5+fHw4dOoT8/HydXtkff/yhfb262vbzjRs3YGNjA6VSWW8Nt27dgpWVFezs7Ops09j9XHUotmoka22USiUcHBzqbQPc69Xm5OTAyclJu1yfw7X79u2DSqXCd999p9NrPnLkiE67wMBAbd0NXVM3Y8YMjB8/Hr///ju2bNmCXr16ITg4uNE1UevioUXSGj58OFxcXLB9+3Zs374d/fv31zmUU9Ujub8Hsm7duiZtb9SoUUhJScGuXbu0y4qKivD555/rtKttu0II/Otf/6qxTltbWwAVX4z1kclkGDFiBPbu3aszxDs9PR1bt27FY489VmfPRV911TRq1Cio1Wp8/PHHOss//PBDSCQSjBw5Umf5yZMndc5DJiYmYu/evRgxYoR2H9V2iPHixYv47rvvMGLECEildf/KN3Y/K5VKDB48GBs3bkRCQoLOa1XvlUqlmDBhAvbt24ezZ8/W2FZVu6pwqX4ZQWFhITZt2lRnnY2pOzc3FxERETrtRowYAXt7e6xevbrGEPr7P9MjR46Em5sb1qxZg8jISPbGjBx7ZKRlaWmJp556Cv/9739RWFiIDz74QOd1BwcHDB48GO+99x7KysrQrl07/Pzzz4iLi2vS9l544QV8/PHHmDFjBs6dOwcvLy988803sLGx0WnXpUsXBAYG4m9/+xuSk5Ph4OCA//3vf7Wem6oaDLFgwQKEhoZCJpNh6tSptW5/1apVOHjwIB577DG89NJLsLCwwIYNG6BSqfDee+816WeqTV01jR07Fk888QT+8Y9/4Pbt2+jZsyd+/vln7N27FwsXLtR+yVfp1q0bQkNDdYbfA8CKFSu0baZMmQJra2sMHDgQ7u7uuHbtGj7//HPY2Njg3XffrbdOffbzv//9bzz22GPo3bs35s6di4CAANy+fRs//PADLly4AAB455138PPPP2PIkCGYO3cuunbtitTUVOzcuRPHjh2Dk5MTRowYAV9fX8yZMwevvfYaZDIZNm7cCKVSWSMk6zJixAjI5XKMHTsW8+bNQ0FBAb744gu4u7sjNTVV287BwQEffvgh/vznP6Nfv36YPn06nJ2dcfHiRRQVFemEp6WlJaZOnYqPP/4YMpkM06ZNa1QtZCAGGClJRuzgwYMCgJBIJCIxMbHG60lJSWLixInCyclJODo6ismTJ4uUlJQaQ9sbM/xeiIoh5OPGjRM2NjbCzc1NvPLKK+Knn36qMdT52rVrYvjw4cLOzk64ubmJF154QVy8eFEAEBEREdp25eXl4uWXXxZKpVJIJBKdod331yiEEOfPnxehoaHCzs5O2NjYiCeeeEKcOHFCp03Vz3L/MPIjR440akh2fTXl5+eLRYsWCW9vb2FpaSmCgoLE+++/rzMcvKr28PBwsXnzZhEUFCQUCoXo1atXjW3/61//Ev379xcuLi7CwsJCeHl5iWeffVbExMTUW2OVxu5nIYS4cuWK9rNgZWUlOnfuLJYuXarTJj4+XsyYMUMolUqhUChEhw4dRHh4uFCpVNo2586dEyEhIUIulwtfX1+xdu3aOoffjx49uta6v/vuO9GjRw9hZWUl/P39xZo1a8TGjRtrrKOq7cCBA4W1tbVwcHAQ/fv3F9u2bauxzjNnzggAYsSIEY3ad2Q4EiFM4Ew1URsnkUgQHh5e4zAktZyLFy/i4Ycfxtdff43nnnvO0OVQPXiOjIioFl988QXs7Ozw1FNPGboUagDPkRERVbNv3z7tucX58+drB+uQ8WKQERFV8/LLLyM9PR2jRo3SGUhDxkuvQ4tqtRpLly5FQEAArK2tERgYiJUrV+oMXZ01a1aNG/qFhYU1e+FEbYkQgufHWsnt27dRXFyMPXv21Jh1hYyTXj2yNWvWYP369di0aROCg4Nx9uxZPP/883B0dNSZLy4sLEznGg6FQtF8FRMREVWjV5CdOHEC48ePx+jRowFU3B9o27ZtOHPmjE47hUIBT0/P5quSiIioDnoF2cCBA/H555/jxo0b6NSpEy5evIhjx45h7dq1Ou2OHj0Kd3d3ODs7Y+jQoVi1ahVcXV0btQ2NRoOUlBTY29tzgk4iojZMCIH8/Hx4e3vXOyuNXhdEq9VqsXjxYiGRSISFhYWQSCTinXfe0Wmzbds2sXfvXnHp0iWxe/du0bVrV9GvXz+d+1xVV1JSInJzc7WPa9euae+9xAcffPDBBx+1Tc5QnV49sh07dmDLli3YunUrgoODceHCBSxcuBDe3t6YOXMmAOhMB9S9e3f06NEDgYGBOHr0KIYNG1ZjnatXr651ZFBiYmKzzXVHRESmJy8vDz4+Pg0OutFrZg8fHx+88cYbOrcOX7VqFTZv3qydsbs2SqUSq1atwrx582q8plKpoFKpahSem5vLICMiasPy8vLg6OjYYB7o1SMrKiqqcZxSJpPVe7+fpKQkZGdnw8vLq9bXFQoFRzUSEVGT6RVkY8eOxdtvvw1fX18EBwcjKioKa9euxezZswEABQUFWLFiBSZNmgRPT0/Exsbi9ddfR8eOHWu9PTkREdGD0uvQYn5+PpYuXYrdu3cjIyMD3t7emDZtGpYtWwa5XI7i4mJMmDABUVFRyMnJgbe3N0aMGIGVK1fCw8OjUdtobFeSiIjMW2PzwOhmv2eQERER0Pg84Oz3RERk0hhkRERk0hhkZFTUGoHYzAJcTcmFRmNUR72JyEjxNi5kMIWqcvyRlo9rqXm4npqHayl5iE7LR3GZGgDg5WiFsG6eGNXdC318nSGVcsoyIqqJgz2oxQkhkJ6nwrXUXFxLycP11Irwup1diNo+fVaWUsgkEhSWqrXL3O0V2lDr5+8CGUONyOxx1CIZRJlag5sZBdoe1vW0ij/vFpXV2t7dXoGHvB3wkJcDuno54CFvB/i72qJMrcGxmCzsv5KKg9fSkV9Srn2Pm50cocGeGN3dC/0DXGAh4xFyInPEIKMHJoRAYakaOUWlyC0uQ25RGXKKy5BbXIacojLkFJcir/LvucVluFNYiluZhShV15zpRSaVIFBpqxNYXb0c4GbX8KwuqnI1TtzMxv7Lqfj5Wjpyi++FooutHKHBHhjV3QuPdHCFJUONyGwwyKhBiXeK8GtMJmLSCyrDqVQbVLmV4VTehAEX9gqLamFlj4e8HBHkYQcrS9kD11ym1uBEbDZ+vJyKA1fTdHp6TjaWGPFQRagNDHSD3IKhRmTKGGRUQ0mZGqfj7iAyOhORNzIQm1nYqPfJZVI42ljCydoSjtaWcLKxhKO1XPv3iucVj0ClHdo7W7fKveTK1RqcunUH+6+k4sCVNGQXlmpfc7CywJMPeWJ0D0881lHJUCMyQQwyghACt7IKK4MrE6duZUNVfu+wn0wqQW9fJ/T2c4arrbwyjOTaYHKysYSTtRxWllKjv8mpWiNwOi4bP15Ow49X0pBVcO+OCk42lhjf0xuT+rRH93aORv+zEFEFBlkbVaAqx8nYbETeyEDkjUwk3inWed3TwQqPd1ZiSCclBnZ0g6O1pYEqbTlqjcC5+LvYfzkV+y+nIiP/XqgFudthUp/2mNirHTwcrAxYJRE1hEHWRggh8EdaPiJvZCIyOhNn4++gTH3vn1Quk6J/gAuGdFJiSGclgtzt2lSPRK0ROHYzC/87l4QDV9O0PVKpBHgsSIk/9WmPEQ95NMv5OyJqXgwyMyaEwIGr6Th8PR2RNzJ1ehwA4Odqg8crg+uRDq6wkfO6dwDIKynD/kup2HUuCWfj72qX21tZYEwPL0zq3R59/JzbVNATGTMGmRn716EYfHjohva5taUMAwJdK3pdnZTwd7M1YHWm4XZWIb49n4T/nU9Gcs69w6/+rjaY1Ls9JvZuh/bONgaskIgYZGYqLqsQoR/+ilK1BtNDfDGqmxf6+jvz0FgTaTQCp+Ky8b9zyfjxSiqKqs0mMqCDKyb1aY+R3Txhq2Cvlqi1McjMkBACMzaewW8xWRjcSYlNz/fjYbBmVKgqx09X0rDrXBJO3srWLreRyxDWzRPjenqjk4c9PB2sOO8jUStgkJmhHy6lInzrecgtpPh54WAeQmxBSXeLsPt8Mv53Pgm3s4t0XpPLpGjvbA0fFxv4Vj60f3e1gV0L9N5KyzXIKlAhM1+FjPyqP0sgk0gwPcQXro2YIYXI1DDIzEyBqhzD/u8o0vNUeGVYEBY92cnQJbUJQlQM5f/f+SSciM1G8t3iBmc7cbWV64ScNuhcbeDpYKWd8FgIgbyScm0oZVYG1P1hlZmvqnOuSgBo52SN/8zsi65e/H0h88IgMzOrvr+G/xyLg5+rDQ4sHMxzYgZSrtYgLa8ECXeKkHinCAl3ipBwp1j7/E612UVqYymToJ2TNco1Apn5Kp0L1BtiKZNAaaeA0l4Bpb0VlPYKnIjNQnx2EWzkMqx9uifCunk96I9IZDQamwc8g20C/kjLQ8SJ2wCAN8cFM8QMyEImRXtnm4oRjYE1X88vKUNitWBLqHwk3ilC4t0ilKlFjUOVDlYWUNor4F4ZTu72VWGlu8zR2rLGubmcolLM3xqFYzez8JfN57FweBAWDA3iObwHVDVhdnaBClkFpbhTWIrsAhWyC0shk0oQ5G6HIHd7tHe25r42AuyRGTmNRuDpDSdxNv4uRnbzxPpn+xi6JGoitUYgPa8EiXeKYCGTagPrQf9jUq7W4O391xFx/DYAYGQ3T3wwuadBRlpm5JXgdNwdPOzjBB8X47p8oaRMXRlIpcgqVCG7oCKc7hSWIqugFNnVlmUXljaqt2xlKUWg0q4i2Dzs0dG94u++Lja8vVAz4KFFM7HzbCJe23UJNnIZDr06BN5O1oYuiYzUjt8T8Y89l1GmFujiaY8vZvRttTApU2vw1fHbWHfohvaGqH39nDGxdzuM7u4FJxt5q9RRXXGpGkejM/D95VT8diMTedXuaddYNnIZXO3kcLFVwM1WDlc7OUrKKu65dzOzAKV1hJ3cQooObrYI8rCv7L3ZIcjDDn6utrzVkB4YZGYgp6gUQ/8vEncKS/H3UV0wd3Atx7KIqjkXfwfzvjmPrAIVXGzl+PSZ3nikg2uLbvP4zSws/+4qbmYUAKgYfJKSW6y9+7dcJsUTXZSY2KsdnujiDoVFyx0aLymrDK9Lqfjljwyd6wKranGpDCRXu3vh5GKrgKudHG52crjaKrRt6psVR60RSLxThJiMAsRk5ONmegFuZOTjZkYBSspqDzgLqQQBbrYI8rBDR3d7dPKwQ2cPe/i7MeBqwyAzA3/ffRlbTyegk4cdflgwiB90apSUnGLM++YcLifnwkIqwZvjgvHsI34tsp23f7iOHy6nAqgYrbk4rAv+1Kc9MvJV2HshGbujkvFHWr72PQ5WFhjdwxtP9W6Hvs00HVhFeGVi/+VUHLqerhNe7ZysMaaHF8K6eSLQ3Q72CosWv/ZSoxFIzilGTEY+YtILKoOuADfT87W91ftZyiTo4GaHTp726ORe+aeHPXxdbLSjXNsiBpmJi0q4i6fWn4AQwI55A9A/wMXQJZEJKS5V4/X/XcK+iykAgGcf8cXyscHN8p8hVbka//ktDh//chPFZWpIJcCMAf5YNLwTHG1q3k3hemoe9kQlY8+FZKTn3ZsXtL2zNSb2aocJvdohUGmnVw0lZWr8eiMTP1xOxaFr6ToB0c7JGqN7eGF0dy/0aG88t+0RQiAltwQx6RW9thvp+biRXoCYegJOYSFFkIcdOrnbV4abHTp52KOdU+vc88/QGGQmTK0RGPfxMVxNycOk3u3xf0/3NHRJZIKEEFgfGYv3D0RDCCAkwAWfPtP7gS6ePhKdgRXfXdWOvOzn74wV47rhIe+Gf1fVGoFTt7KxOyoZP15O1fny7tneERN7tcOYnt5wq6O+kjI1fovJwg+XUnDoegYKVPfOeXk7WmF0Dy+M6u6Fh32cTOpLXoiKHlxVsN1Iy8eNyt5cXQNObOUyBHncC7aHvBzQw8epRS7GNyQGmQnbdOI2ln93FQ5WFvjlb4/X+YtN1BiHr6fjlf9eQIGqvMkXTyfeKcJb31/DwWvpAAClvQL/GNUV4x/2blJoFJeqcfB6OnafT8KvMVlQV15kLpNKMKSTEhN6tcOTXT0glQK/3cjCD5dTcfBauk54eTlaYXR3L4zq4YVeJhZejVF1Di46PR8x6fmIruy9xWYW6NyqqYpUAnT1ckAfP2ftw9R7bgwyE5WRX4JhH0QiX1WOlRO64bkWOLdBbU9Mej5e+Posbut58XRJmRrrj8bis8hYqMo1sJBK8Pyj/lgwLAj2Vs1zU9asAhX2XUzBnqhkXEzK1S63U1hAAiD/vvAa2c0LoyvDqy1ew1Wm1uB2ViFupBcgOj0fN9LycTk5V+cuDlU8Hax0gu0hbweTOtfOIDNRC/8bhT0XUtCjvSN2v/Romz7RS82r+sXTAPDKsCC8Mqz2i6eFEDh4LR1vfX8NSXcrviAHBrpixbhgBHnYt1iNNzMKtINEqrbr6WCFkd09MaaHF3r5OLfJ8GqMtNwSnIu/i7Pxd3A+/i6upuTVmE7NylKKnu2d0MfPGX39ndHb19kgl0Y0FoPMBJ2IzcL0L05DIgH2hj+KHu2dDF0SmZn7L54OC/bE/z2te/F0XFYhVuy7iqPRmQAqzj/9c8xDGNnNs9UOU2k0AheTcgAAPdu3zZ7XgyouVeNiUg7Oxd/VPnKLa87Z2dHdDn18ndGnMthcbOWQSgAJJICk4pClRCKBBIBUIoFEgooHKv4urXxNUtmuOTHITExpuQYj//UrYjML8dwjflg5oZuhSyIzVtvF0652cnz8y03857c4lKo1kMukeGFwAMKf6Mi7jJsBjUbgVlYBzt6+F2y3sgqbfTvVw23jrH4Y3EnZ5HVxrkUT859jtxCbWQg3Ozn+NqKzocshM/d0Px8Eutti3jfn8UdaPsZ/chwKCylSc0sAAI93VmL52GAE8FZBZkMqlaCjuz06uttjan9fAMCdwtJqPbY7uJiUW+dsJY0lBKBu5f4Re2RGIOluEZ5c+yuKy9RY+3RPPNW7vaFLojai+sXTAODjYo1lY4IxvKu7SY92o6YRQkAIQADQaP9e+aeoXFbZTiMAVL6uEfeWiYqF0AjAycbygeYSZY/MhLy17xqKy9ToH+CCib3aGbocakO8nayxY94AfPRLDBysLTFroD/vrtCGSSrPgQGADKbzHxkGmYEdvp6On6+lw0IqwaoJ3fi/YGp11nIZXg/rYugyiJrMdC4oMEPFpWos/+4qAGDOoAB0asFhzURE5opBZkCfHr2JpLvF8Ha0woKhQYYuh4jIJDHIDCQ2swAbIm8BAJaNDTbITRCJiMyBXkGmVquxdOlSBAQEwNraGoGBgVi5ciWqD3wUQmDZsmXw8vKCtbU1hg8fjpiYmGYv3JQJIbB871WUqjV4orMSocEehi6JiMhk6RVka9aswfr16/Hxxx/j+vXrWLNmDd577z189NFH2jbvvfce/v3vf+Ozzz7D6dOnYWtri9DQUJSUlDR78abq+0upOHYzCwoLKVaM4wAPIqIHodfxrBMnTmD8+PEYPXo0AMDf3x/btm3DmTNnAFT0NNatW4d//vOfGD9+PADg66+/hoeHB/bs2YOpU6c2c/mmJ7+kDCu/vwYACH+iI3xdW+dW9ERE5kqvHtnAgQNx+PBh3LhxAwBw8eJFHDt2DCNHjgQAxMXFIS0tDcOHD9e+x9HRESEhITh58mQzlm26PjwYg4x8FQLcbDF3cAdDl0NEZPL06pG98cYbyMvLQ5cuXSCTyaBWq/H222/jmWeeAQCkpaUBADw8dM/5eHh4aF+7n0qlgkp1766xeXl5ev0ApuRqSi6+OhEHAFgxLpgXnhIRNQO9emQ7duzAli1bsHXrVpw/fx6bNm3CBx98gE2bNjW5gNWrV8PR0VH78PHxafK6jFnVAA+NAEZ393qgiTSJiOgevYLstddewxtvvIGpU6eie/fueO6557Bo0SKsXr0aAODp6QkASE9P13lfenq69rX7LVmyBLm5udpHYmJiU34OoxeVmIOz8XehsJDin2O6GrocIiKzoVeQFRUVQSrVfYtMJoNGUzFbckBAADw9PXH48GHt63l5eTh9+jQGDBhQ6zoVCgUcHBx0HuZo2+kEAMDoHl7wcrQ2cDVEROZDr3NkY8eOxdtvvw1fX18EBwcjKioKa9euxezZswFUTDi5cOFCrFq1CkFBQQgICMDSpUvh7e2NCRMmtET9JiGvpAz7LqUAAJ4J8TVwNURE5kWvIPvoo4+wdOlSvPTSS8jIyIC3tzfmzZuHZcuWadu8/vrrKCwsxNy5c5GTk4PHHnsMP/30E6ysrJq9eFOxNyoZJWUadPKwQ29fZ0OXQ0RkVng/shYmhMDIf/2GP9LysXzsQ3j+0QBDl0REZBIamweca7GFXUjMwR9p+VBYSPFUL94wk4iouTHIWti2M/cGeTjaWBq4GiIi88Mga0F5JWXYdzEVADC9Pwd5EBG1BAZZC9oblYziMjU6edihjx8HeRARtQQGWQsRQmBL5bVj0/r7coZ7IqIWwiBrIRzkQUTUOhhkLYSDPIiIWgeDrAVwkAcRUethkLWAqkEeQe4c5EFE1NIYZM2s+iCP6SEc5EFE1NIYZM3sYlKudpDHxF7tDF0OEZHZY5A1M+3tWrp7wclGbuBqiIjMH4OsGeWVlOG7ixW3a5nO27UQEbUKBlkz2nshhYM8iIhaGYOsmQghsJUzeRARtToGWTO5mJSL66l5FTN59OYgDyKi1sIgayYc5EFEZBgMsmaQX22QxzQO8iAialUMsmawp3KQR0d3O/TlIA8iolbFIHtA1Qd5TOcgDyKiVscge0CXKgd5yDnIg4jIIBhkD2grB3kQERkUg+wB5HMmDyIig2OQPYC9HORBRGRwDLIm4kweRETGgUHWRJeScnGtcpDHJA7yICIyGAZZE207w0EeRETGgEHWBDozefTnIA8iIkNikDXB3gspKCqtGOTRz5+DPIiIDIlBpicO8iAiMi4MMj1dTuYgDyIiY8Ig0xNn8iAiMi4MMj1wkAcRkfFhkOnhu4sc5EFEZGwYZHqounaMgzyIiIwHg6yRLiXl4Epy5e1aenGQBxGRsWCQNVJVb2xUN08423KQBxGRsWCQNUKBqhx7L3CQBxGRMWKQNcLeC8koKlUjUGmL/gEuhi6HiIiq0SvI/P39IZFIajzCw8MBAI8//niN1/7yl7+0SOGtiYM8iIiMl4U+jX///Xeo1Wrt8ytXruDJJ5/E5MmTtcteeOEFvPXWW9rnNjY2zVCm4VxOytUO8pjUu72hyyEiovvoFWRKpVLn+bvvvovAwEAMGTJEu8zGxgaenp7NU50R+P5yxbmxsGAO8iAiMkZNPkdWWlqKzZs3Y/bs2TqH27Zs2QI3Nzd069YNS5YsQVFRUb3rUalUyMvL03kYk9iMAgBAP54bIyIySnr1yKrbs2cPcnJyMGvWLO2y6dOnw8/PD97e3rh06RIWL16M6OhofPvtt3WuZ/Xq1VixYkVTy2hxtzILAQCBbrYGroSIiGojEUKIprwxNDQUcrkc+/btq7PNL7/8gmHDhuHmzZsIDAystY1KpYJKpdI+z8vLg4+PD3Jzc+Hg4NCU0ppNmVqDrkt/QrlG4OSSofBytDZoPUREbUleXh4cHR0bzIMm9cji4+Nx6NChentaABASEgIA9QaZQqGAQqFoShktLvFOEco1AtaWMng6WBm6HCIiqkWTzpFFRETA3d0do0ePrrfdhQsXAABeXl5N2YzBxWVVHFYMcLPlsHsiIiOld49Mo9EgIiICM2fOhIXFvbfHxsZi69atGDVqFFxdXXHp0iUsWrQIgwcPRo8ePZq16NZSdX6sg5Lnx4iIjJXeQXbo0CEkJCRg9uzZOsvlcjkOHTqEdevWobCwED4+Ppg0aRL++c9/Nluxre1WZY+sAwd6EBEZLb2DbMSIEahtfIiPjw8iIyObpShjcSuzYuh9B6WdgSshIqK6cK7FelQ/R0ZERMaJQVaH/JIyZORXXBYQwHNkRERGi0FWh9tZFTOSuNkp4GBlaeBqiIioLgyyOtzKqjo/xt4YEZExY5DVQTv0nufHiIiMGoOsDtqh9+yREREZNQZZHeIqDy0GuHHoPRGRMWOQ1UIIgTjO6kFEZBIYZLXIyFehsFQNmVQCH2fTvsM1EZG5Y5DVIrZyRg9fFxvILbiLiIiMGb+la8EZPYiITAeDrBYcek9EZDoYZLXQ9sg40IOIyOgxyGqhnfWeQ++JiIweg+w+peUaJN4tBsCh90REpoBBdp+EO0VQawRs5TK42ysMXQ4RETWAQXaf6ufHJBKJgashIqKGMMjuw/NjRESmhUF2n1ucmoqIyKQwyO7Di6GJiEwLg+w+VTfUDFTy0CIRkSlgkFWTW1yGrIJSAIA/e2RERCaBQVZN1WFFDwcF7BQWBq6GiIgag0FWzb2babI3RkRkKhhk1dwbscjzY0REpoJBVs2tLM56T0Rkahhk1fAaMiIi08Mgq6TRCNzWXkPGQ4tERKaCQVYpLa8ExWVqWEgl8HG2NnQ5RETUSAyySlVD731dbWAh424hIjIV/MauxMmCiYhME4OsknbEIgd6EBGZFAZZJe2IRQ69JyIyKQyySpz1nojINDHIAKjK1Ui6WwSAs3oQEZkaBhmAhOwiaARgr7CAm53c0OUQEZEeGGQAYqvN6CGRSAxcDRER6YNBBp4fIyIyZXoFmb+/PyQSSY1HeHg4AKCkpATh4eFwdXWFnZ0dJk2ahPT09BYpvDlpryHj+TEiIpOjV5D9/vvvSE1N1T4OHjwIAJg8eTIAYNGiRdi3bx927tyJyMhIpKSk4Kmnnmr+qpsZe2RERKZLr9sgK5VKnefvvvsuAgMDMWTIEOTm5uLLL7/E1q1bMXToUABAREQEunbtilOnTuGRRx5pvqqbGS+GJiIyXU0+R1ZaWorNmzdj9uzZkEgkOHfuHMrKyjB8+HBtmy5dusDX1xcnT56scz0qlQp5eXk6j9aUU1SKO4WlANgjIyIyRU0Osj179iAnJwezZs0CAKSlpUEul8PJyUmnnYeHB9LS0upcz+rVq+Ho6Kh9+Pj4NLWkJqnqjXk5WsFGrlcHlYiIjECTg+zLL7/EyJEj4e3t/UAFLFmyBLm5udpHYmLiA61PX1VTU7E3RkRkmprUBYmPj8ehQ4fw7bffapd5enqitLQUOTk5Or2y9PR0eHp61rkuhUIBhULRlDKaRVxW1YhFBhkRkSlqUo8sIiIC7u7uGD16tHZZnz59YGlpicOHD2uXRUdHIyEhAQMGDHjwSlvIvR4Zh94TEZkivXtkGo0GERERmDlzJiws7r3d0dERc+bMwauvvgoXFxc4ODjg5ZdfxoABA4x6xGIcRywSEZk0vYPs0KFDSEhIwOzZs2u89uGHH0IqlWLSpElQqVQIDQ3Fp59+2iyFtgSNRtwLMp4jIyIySRIhhDB0EdXl5eXB0dERubm5cHBwaNFtJd0twmNrjsBSJsEfK0dCJuU8i0RExqKxedCm51qsOj/m52rLECMiMlFtOsh4WJGIyPS16SDjZMFERKavbQcZe2RERCavbQdZJofeExGZujYbZCVlaqTkFgPg9FRERKaszQbZ7exCCAE4WlvCxVZu6HKIiKiJ2myQxVWbLFgi4dB7IiJT1WaDjDfTJCIyD203yDI5YpGIyBy03SDL4jVkRETmoM0GWdWsHhyxSERk2tpkkN0pLEVOURkABhkRkalrk0FWdVfodk7WsLKUGbgaIiJ6EG0yyGI5owcRkdlok0HG82NEROajTQaZdtZ7BhkRkclrk0Gm7ZFx6D0Rkclrc0Gm1gjczi4CwB4ZEZE5aHNBlpJTjNJyDeQWUng7WRu6HCIiekBtLshiK8+PBbjaQiblZMFERKauzQXZrUyOWCQiMidtLsjiOOs9EZFZaXNBVjVZMHtkRETmoc0FWZx2Vg8OvSciMgdtKsiKSsuRklsCgEPviYjMRZsKsttZFdePOdtYwtlWbuBqiIioObSpIOP5MSIi89Omgoznx4iIzE+bCrJbnPWeiMjstMkgC+Q1ZEREZqPNBJkQQnv7lgA3HlokIjIXbSbIsgtLkV9SDokE8HO1MXQ5RETUTNpMkFXNsdjOyRpWljIDV0NERM2lzQRZXOXQe45YJCIyL20myKp6ZJzRg4jIvLSdIOOs90REZqntBFnliMUOHLFIRGRW9A6y5ORkPPvss3B1dYW1tTW6d++Os2fPal+fNWsWJBKJziMsLKxZi9ZXuVqDhDsV8ywGsEdGRGRWLPRpfPfuXTz66KN44okn8OOPP0KpVCImJgbOzs467cLCwhAREaF9rlAomqfaJkq6W4wytYCVpRReDlYGrYWIiJqXXkG2Zs0a+Pj46IRUQEBAjXYKhQKenp4PXl0zqbortL+rLaRSiYGrISKi5qTXocXvvvsOffv2xeTJk+Hu7o5evXrhiy++qNHu6NGjcHd3R+fOnfHiiy8iOzu72QpuitjK82OBHHpPRGR29AqyW7duYf369QgKCsKBAwfw4osvYsGCBdi0aZO2TVhYGL7++mscPnwYa9asQWRkJEaOHAm1Wl3rOlUqFfLy8nQezS2OkwUTEZktvQ4tajQa9O3bF++88w4AoFevXrhy5Qo+++wzzJw5EwAwdepUbfvu3bujR48eCAwMxNGjRzFs2LAa61y9ejVWrFjxID9Dg7TXkHGgBxGR2dGrR+bl5YWHHnpIZ1nXrl2RkJBQ53s6dOgANzc33Lx5s9bXlyxZgtzcXO0jMTFRn5IahT0yIiLzpVeP7NFHH0V0dLTOshs3bsDPz6/O9yQlJSE7OxteXl61vq5QKFp0VGOhqhxpeSUAeA0ZEZE50qtHtmjRIpw6dQrvvPMObt68ia1bt+Lzzz9HeHg4AKCgoACvvfYaTp06hdu3b+Pw4cMYP348OnbsiNDQ0Bb5ARpS1RtztZXD0cbSIDUQEVHL0SvI+vXrh927d2Pbtm3o1q0bVq5ciXXr1uGZZ54BAMhkMly6dAnjxo1Dp06dMGfOHPTp0we//fabwa4l49RURETmTa9DiwAwZswYjBkzptbXrK2tceDAgQcuqjndu5kmg4yIyByZ/VyLcdoeGc+PERGZI7MPsqqh9+yRERGZJ7MOMiGEtkcWyHNkRERmyayDLDNfhQJVOaQSwMfFxtDlEBFRCzDrIKsasejjYgOFhczA1RARUUsw7yDj+TEiIrNn1kEWl8W7QhMRmTuzDjJtj4wDPYiIzJZZB5l2xCIPLRIRmS2zDbIytQYJd4oAsEdGRGTOzDbIEu8UoVwjYG0pg6eDlaHLISKiFmK2QVZ9xKJEIjFwNURE1FLMNsjiOOs9EVGbYLZBdks79J5BRkRkzsw3yDI56z0RUVtgvkGWxVk9iIjaArMMsvySMmTmqwBw6D0RkbnT+w7RpiCvpBz9/V2QV1IGBytLQ5dDREQtyCyDrJ2TNXb8ZYChyyAiolZglocWiYio7WCQERGRSWOQERGRSWOQERGRSWOQERGRSWOQERGRSWOQERGRSTO668iEEACAvLw8A1dCRESGVJUDVblQF6MLsvz8fACAj4+PgSshIiJjkJ+fD0dHxzpfl4iGoq6VaTQapKSkwN7e3qRuiJmXlwcfHx8kJibCwcHB0OU0GutufaZau6nWDZhu7W29biEE8vPz4e3tDam07jNhRtcjk0qlaN++vaHLaDIHBweT+sBVYd2tz1RrN9W6AdOtvS3XXV9PrAoHexARkUljkBERkUljkDUThUKB5cuXQ6FQGLoUvbDu1meqtZtq3YDp1s66G8foBnsQERHpgz0yIiIyaQwyIiIyaQwyIiIyaQwyIiIyaQyyRli9ejX69esHe3t7uLu7Y8KECYiOjq73PV999RUkEonOw8rKqpUqrvDmm2/WqKFLly71vmfnzp3o0qULrKys0L17d+zfv7+VqtXl7+9fo3aJRILw8PBa2xtqf//6668YO3YsvL29IZFIsGfPHp3XhRBYtmwZvLy8YG1tjeHDhyMmJqbB9X7yySfw9/eHlZUVQkJCcObMmVaru6ysDIsXL0b37t1ha2sLb29vzJgxAykpKfWusymft+auHQBmzZpVo46wsLAG12vIfQ6g1s+7RCLB+++/X+c6W2OfN+b7r6SkBOHh4XB1dYWdnR0mTZqE9PT0etfb1N+N2jDIGiEyMhLh4eE4deoUDh48iLKyMowYMQKFhYX1vs/BwQGpqanaR3x8fCtVfE9wcLBODceOHauz7YkTJzBt2jTMmTMHUVFRmDBhAiZMmIArV660YsUVfv/9d526Dx48CACYPHlyne8xxP4uLCxEz5498cknn9T6+nvvvYd///vf+Oyzz3D69GnY2toiNDQUJSUlda5z+/btePXVV7F8+XKcP38ePXv2RGhoKDIyMlql7qKiIpw/fx5Lly7F+fPn8e233yI6Ohrjxo1rcL36fN5aovYqYWFhOnVs27at3nUaep8D0Kk3NTUVGzduhEQiwaRJk+pdb0vv88Z8/y1atAj79u3Dzp07ERkZiZSUFDz11FP1rrcpvxt1EqS3jIwMAUBERkbW2SYiIkI4Ojq2XlG1WL58uejZs2ej2z/99NNi9OjROstCQkLEvHnzmrky/b3yyisiMDBQaDSaWl83hv0NQOzevVv7XKPRCE9PT/H+++9rl+Xk5AiFQiG2bdtW53r69+8vwsPDtc/VarXw9vYWq1evbpW6a3PmzBkBQMTHx9fZRt/PW3OorfaZM2eK8ePH67UeY9zn48ePF0OHDq23jSH2+f3ffzk5OcLS0lLs3LlT2+b69esCgDh58mSt62jq70Zd2CNrgtzcXACAi4tLve0KCgrg5+cHHx8fjB8/HlevXm2N8nTExMTA29sbHTp0wDPPPIOEhIQ62548eRLDhw/XWRYaGoqTJ0+2dJn1Ki0txebNmzF79ux6J5I2hv1dXVxcHNLS0nT2qaOjI0JCQurcp6WlpTh37pzOe6RSKYYPH27Qf4fc3FxIJBI4OTnV206fz1tLOnr0KNzd3dG5c2e8+OKLyM7OrrOtMe7z9PR0/PDDD5gzZ06DbVt7n9///Xfu3DmUlZXp7L8uXbrA19e3zv3XlN+N+jDI9KTRaLBw4UI8+uij6NatW53tOnfujI0bN2Lv3r3YvHkzNBoNBg4ciKSkpFarNSQkBF999RV++uknrF+/HnFxcRg0aJD2Vjn3S0tLg4eHh84yDw8PpKWltUa5ddqzZw9ycnIwa9asOtsYw/6+X9V+02efZmVlQa1WG9W/Q0lJCRYvXoxp06bVOwGsvp+3lhIWFoavv/4ahw8fxpo1axAZGYmRI0dCrVbX2t4Y9/mmTZtgb2/f4OG51t7ntX3/paWlQS6X1/hPTn37rym/G/UxutnvjV14eDiuXLnS4HHoAQMGYMCAAdrnAwcORNeuXbFhwwasXLmypcsEAIwcOVL79x49eiAkJAR+fn7YsWNHo/6nZyy+/PJLjBw5Et7e3nW2MYb9bY7Kysrw9NNPQwiB9evX19vWWD5vU6dO1f69e/fu6NGjBwIDA3H06FEMGzas1ep4EBs3bsQzzzzT4ICl1t7njf3+a23skelh/vz5+P7773HkyBG9bzVjaWmJXr164ebNmy1UXcOcnJzQqVOnOmvw9PSsMdIoPT0dnp6erVFereLj43Ho0CH8+c9/1ut9xrC/q/abPvvUzc0NMpnMKP4dqkIsPj4eBw8e1Pt2HA193lpLhw4d4ObmVmcdxrTPAeC3335DdHS03p95oGX3eV3ff56enigtLUVOTo5O+/r2X1N+N+rDIGsEIQTmz5+P3bt345dffkFAQIDe61Cr1bh8+TK8vLxaoMLGKSgoQGxsbJ01DBgwAIcPH9ZZdvDgQZ2eTmuLiIiAu7s7Ro8erdf7jGF/BwQEwNPTU2ef5uXl4fTp03XuU7lcjj59+ui8R6PR4PDhw63671AVYjExMTh06BBcXV31XkdDn7fWkpSUhOzs7DrrMJZ9XuXLL79Enz590LNnT73f2xL7vKHvvz59+sDS0lJn/0VHRyMhIaHO/deU342GiqQGvPjii8LR0VEcPXpUpKamah9FRUXaNs8995x44403tM9XrFghDhw4IGJjY8W5c+fE1KlThZWVlbh69Wqr1f3Xv/5VHD16VMTFxYnjx4+L4cOHCzc3N5GRkVFrzcePHxcWFhbigw8+ENevXxfLly8XlpaW4vLly61Wc3VqtVr4+vqKxYsX13jNWPZ3fn6+iIqKElFRUQKAWLt2rYiKitKO7nv33XeFk5OT2Lt3r7h06ZIYP368CAgIEMXFxdp1DB06VHz00Ufa5//973+FQqEQX331lbh27ZqYO3eucHJyEmlpaa1Sd2lpqRg3bpxo3769uHDhgs5nXqVS1Vl3Q5+31qg9Pz9f/O1vfxMnT54UcXFx4tChQ6J3794iKChIlJSU1Fm7ofd5ldzcXGFjYyPWr19f6zoMsc8b8/33l7/8Rfj6+opffvlFnD17VgwYMEAMGDBAZz2dO3cW3377rfZ5Y343GotB1ggAan1ERERo2wwZMkTMnDlT+3zhwoXC19dXyOVy4eHhIUaNGiXOnz/fqnVPmTJFeHl5CblcLtq1ayemTJkibt68WWfNQgixY8cO0alTJyGXy0VwcLD44YcfWrXm6g4cOCAAiOjo6BqvGcv+PnLkSK2fjaraNBqNWLp0qfDw8BAKhUIMGzasxs/j5+cnli9frrPso48+0v48/fv3F6dOnWq1uuPi4ur8zB85cqTOuhv6vLVG7UVFRWLEiBFCqVQKS0tL4efnJ1544YUagWRs+7zKhg0bhLW1tcjJyal1HYbY5435/isuLhYvvfSScHZ2FjY2NmLixIkiNTW1xnqqv6cxvxuNxdu4EBGRSeM5MiIiMmkMMiIiMmkMMiIiMmkMMiIiMmkMMiIiMmkMMiIiMmkMMiIiMmkMMiIiMmkMMiIiMmkMMiIiMmkMMiIiMmkMMiIiMmn/D+1qXZg3KmicAAAAAElFTkSuQmCC\n"
          },
          "metadata": {}
        }
      ],
      "source": [
        "import matplotlib.pyplot as plt\n",
        "import numpy as np\n",
        "# 绘制曲线\n",
        "plt.figure(figsize=(5, 3))\n",
        "plt.plot(np.arange(1, max_epoch + 1), lossv)\n",
        "plt.title('validation loss')\n",
        "\n",
        "plt.figure(figsize=(5,3))\n",
        "plt.plot(np.arange(1, max_epoch + 1), top1AccuracyList)\n",
        "plt.title('validation top1 accuracy')\n",
        "\n",
        "plt.figure(figsize=(5,3))\n",
        "plt.plot(np.arange(1, max_epoch + 1), top5AccuracyList)\n",
        "plt.title('validation top5 accuracy')"
      ]
    },
    {
      "cell_type": "code",
      "execution_count": 18,
      "metadata": {
        "id": "fyWGvlbHup5w"
      },
      "outputs": [],
      "source": [
        "\n"
      ]
    },
    {
      "cell_type": "code",
      "source": [],
      "metadata": {
        "id": "tWPk-yOuUsuw"
      },
      "execution_count": 18,
      "outputs": []
    }
  ],
  "metadata": {
    "accelerator": "GPU",
    "colab": {
      "provenance": [],
      "gpuType": "T4"
    },
    "gpuClass": "standard",
    "kernelspec": {
      "display_name": "Python 3",
      "name": "python3"
    },
    "language_info": {
      "name": "python"
    }
  },
  "nbformat": 4,
  "nbformat_minor": 0
}